Apparatus for communicating with a vehicle during remote vehicle operations, program product, and associated methods

ABSTRACT

An apparatus to enhance command communication in a high-noise environment between a user and user vehicle mobile data computer system, program product, and associated methods are provided. The apparatus includes a vehicle computer adapted to be positioned within a user vehicle and a vehicle computer application program stored in memory of the vehicle computer adapted to communicate with a remote host computer. A voice command interface program product is also stored in the memory and is in communication with the mobile data communications application program. The voice command interface program product is adapted to receive as audio input, through an audio input device, a voice command from the user representing a command input, identify the voice command by analyzing the received audio input, echo the identified voice command through an audio speaker, and transmit the command input to the vehicle computer application program, the echo including a preselected audio message verbally representing the identified voice command.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a divisional application which claims priority toand the benefit of continuation-in-part U.S. patent application Ser. No.10/656,487, filed on Sep. 5, 2003, which is a continuation of U.S.patent application Ser. No. 09/968,633, filed on Oct. 1, 2001, now U.S.Pat. No. 6,621,422, all of which are incorporated herein by reference intheir entirety.

BACKGROUND OF THE INVENTION

1. Field Of The Invention

The present invention relates to the field of communications generallyand, more particularly, to vehicle communication systems, programproducts, and associated methods.

2. Description of the Related Art

Law enforcement officers and other civil servants have long needed acost-effective system which delivers data quickly, helps e.g., policeofficers save time in the performance of their duties, and accomplishesthese goals without interfering with other officer duties or endangeringthe officer. Early officer data systems included human dispatchers inradio frequency (“RF”) communication with officers in vehicles. In theseearly systems, data requested by the officer was typically searched forby hand and read back to the officer over the radio and, therefore,suffered from slow delivery of data, costs associated with employingdispatchers, and a very limited database of available data.

These early systems were gradually replaced by police departmentcomputer systems, typically including a main computer in a policedepartment headquarters or control center in communication with a policevehicle mobile data computer and at least one law enforcement database,such as the system shown in U.S. Pat. No. 6,188,939, by Morgan et al.titled “Advanced Law Enforcement and Response Technology.” Systems ofthis type use a handheld input device having a magnet stripe reader forfilling in forms with data held on a magnet stripe located on cards suchas driver's licenses, transmitting these forms to the vehicle mobiledata computer, and printing out these forms on a printer positioned inthe vehicle. The magnet stripe reader for reading driver's licensesposes an additional problem because the data obtained from the magnetstripe is often out of date, especially in states where licenses neednot be renewed, and hence bar codes not being updated for many years.Further, the handheld unit required by such systems prevents theofficer's hands from being free for other activities and can place theofficer in dangerous situations such as when the officer's attention isdevoted to the handheld unit instead of the officer's surroundings.

Some systems such as the Premiere MDC system sold by MotorolaCorporation of Straumberg, Ill. have a police department computer incommunication with a police vehicle mobile data computer and a databaseof law enforcement data. These systems offer computer aided dispatching,computer generated reports to be filled out by the officer, and cantransmit responses to officer requests for law enforcement data such asdata associated with license plate numbers or driver's licenses. Thevehicle mobile data computer software in the Premiere MDC system has alimited text-to-voice program for presenting data in audio rather thanvideo format and is also capable of displaying maps using a globalpositioning system (“GPS”) unit to define the area to be displayed. Thepresentation of this data, however, is often poorly organized and poorlyprioritized, thereby requiring the officer to spend a long time findingthe desired data and distracting the officer from other work. Thetext-to-voice software from the Motorola system allows the officer to besomewhat more aware of the surroundings but still endangers the officeras critical data, such as whether a suspect is believed to be dangerous,may not come until the middle or end of the audio transmission.

Such systems conventionally transfer each element of written data ortext-to-voice, e.g., including zip codes, extraneous information. Muchof this information, however, is not needed by the officer and can beinformation overload for an officer. Further, because text-to-voice istypically monotone or lacking intonation, the officer must concentratemore attention on the transmission and may misunderstand portions of thetransmission. Systems such as the Motorola system pose a still furtherproblem because the officer must frequently focus attention on thecomputer screen while filling in forms and checking responses toqueries. This substantially increases the danger to the officer as theofficer cannot be aware of the surroundings at the same time.

Applicant recognized as beneficial in co-pending U.S. application Ser.No. 10/656,487 by Rubenstein titled “Apparatus for Communicating withLaw Enforcement During Vehicle Travel and Associated Methods” and U.S.Pat. No. 6,621,422 by Rubenstein titled “Apparatus for Communicatingwith Law Enforcement During Vehicle Travel and Associated Methods,” anapparatus and software for communicating with law enforcement duringvehicle travel which: prioritizes pre-recorded human voice responses toofficer queries that delivers rapid, easily comprehended responses thatallow the officer to maintain visual awareness of the surroundings atall times; transmits audio alarms to the officer to give the officerimmediate warning of degrees of law violation associated with a suspect;and provides cost effective quick mapping of incident locations. Suchapparatus and software previously have been beneficially implemented inmany vehicles.

Also with recent advances in computer technology, microphone technology,and speech recognition algorithms, there has been an emergence of speechrecognition software capable of providing discrete word and phraserecognition. Speech recognition software generally receives a speechsignal, determines which words constitute the speech signal, and applythe determined words to an application program either in the form of acommand or in the form of text. Speech recognition systems generallycompare an acoustic description of text stored in a vocabulary databaseagainst an acoustic signal generated by the utterance of the text to berecognized. The speech recognition system then determines if the wordsor text are commands vs. dictation, applying the words or text ascommands if recognized as a command.

There are numerous problems encountered in the attempt to perfect speechrecognition. For example, problems can include difficulty in determiningwhen an utterance has begun. This problem is significantly exacerbatedin a high-background noise environment. Some systems use a statisticallyderived acoustic model of background noise to filter the incomingacoustic signal. These systems have met some success where thenon-speech sounds consist mostly of background noise having a fairlyconstant frequency and amplitude not matching the spectralcharacteristics of the text stored in the vocabulary database.

Nevertheless, non-speech sounds, including background noise, arefrequently detected as speech. This condition is problematic because thespeech recognition systems examine a very large database of words ortext, attempting to match a detected sound to each word or text. Assuch, speech recognition systems are likely to be falsely triggered intointerpreting non-speech sounds as speech. Even if the speech recognitionsystem is able to differentiate between the non-speech sounds anddesired speech, resources of the associated computer system can beheavily taxed during such determination, thus causing a significantdelay to the user. This can cause the user to lose track of what speechwas provided to the speech recognition system, distracting the user, andnegating the benefit of using a speech recognition system.

Various vehicles, e.g., law enforcement or other public servicevehicles, present an extremely high-background noise environment frommultiple sources, such as, for example, the road, the engine, the wind,the vehicle fan, and the vehicle radio and/or passengers. Due to thelevel of such noise, the typical voice recognition system would beoverwhelmed, causing extended delays as high as 20 seconds or moreattempting to match the speech to be recognized with the vocabularydatabase. During a critical event such as, for example, a high-speedchase, distraction caused by either having to change focus to thecomputer screen to verify correct data entry or determining if thesystem received a command provided in the officer's speech, cansignificantly increase the likelihood of a traffic accident.Nevertheless, attempts have been made to implement a vehicle voicerecognition system. Such a system is known as “Project 54.”

Project 54, however, requires its own specialized hardware, hardwareinterface, and software package, which must be shipped or otherwisephysically delivered to the vehicle. A vehicle electrician must theninstall the hardware interface and additional hardware, such as, forexample, a press-to-talk switch that must be both connected to a vehiclestructure and electrically interfaced with one of the ports of thevehicle computer. The vehicles mobile client software application mustthen be replaced with that of Project 54. The operator of the vehiclemust then be trained to use the Project 54 mobile client and mustmemorize the voice commands utilized by the Project 54 software package.

The Applicant has recognized, however, that the various law-enforcementand other public service departments throughout the country have varyingrequirements, and prefer to utilize different mobile client softwareapplications, generally having similar functionality, but controlled bydifferent function keys. Such public service departments generally donot have the time or resources to perform vehicle modifications.Further, requiring the different departments to re-train their personnelin use of software having unfamiliar characteristics would requireadditional training expenditures, interrupt scheduling, and may causeoperating difficulties, especially during initial implementation, whichcould result in an inability to receive critical information.

Also recognized by the Applicant is that Project 54, similar to thevarious speech recognition applications described previously, isextremely susceptible to noise signals encountered when the push-to-talkswitch is engaged to allow the microphone to receive an audio signal,such as during delivery of a voice command. In such situations, thevehicle computer system resources can be heavily taxed while attemptingto recognize the voice command, causing a significant delay in eitherrecognizing the voice command or failing to do so. This can result in asevere distraction to the user. Further, the user is not provided asystem ready status, and thus, may lose track of which voice command isbeing processed. As stated, such distractions negate the benefit ofusing voice recognition systems. Recognized by the Applicant is thatsuch a system is wholly inadequate system for suppressing the effects ofnoise. The user must divert attention to the push-to-talk switch,provide voice commands during a relatively low-noise situation, andquickly release the switch to prevent extraneous noise from beingreceived. Also recognized by the Applicant is that this limitationprevents the software from being operated in an entirely hands-freemode.

Thus, recognized by the Applicant is the need for a voice commandinterface program product or software compatible with a multitude oflaw-enforcement or other vehicle based mobile data systems that enablesa user to utilize voice commands to operate the vehicle mobile datasystem, that requires little or no user training, and that has a veryhigh accuracy under the most arduous conditions. Also recognized is thatany voice command interface related system to be used for in-vehicleapplications should be capable of not only enhancing the user's voice,but also eliminating background noise and minimizing the effect of othernon-speech sounds.

SUMMARY OF THE INVENTION

With the foregoing in mind, embodiments of the present inventionadvantageously provide an apparatus, program product, and associatedmethods to communicate with a vehicle during vehicle travel that canenhance the flow of data to and from a vehicle driver or other user,such as a police officer. Embodiments of the present invention alsoprovide an apparatus, including a voice command interface programproduct, that reduces the need to type commands into a computer and/orpress keyboard keys or buttons that are difficult to access, especiallywhen the vehicle is on the move. Embodiments of the present inventionalso provide an apparatus, including a voice command interface programproduct, that delivers audio feedback indicating the selection of acommand input to a mobile data Communications application program in theform of the voice command, returning the interpretation of the voicecommand so the vehicle user can determine if the command or text wasinterpreted correctly.

Advantageously, the voice command interface program product can providevoice command recognition and can deliver an echo of each spoken voicecommand, or a subset thereof, either in the form of text-to-speech or inthe form of a pre-recorded human voice. Advantageously, this negates theneed for the vehicle user to remove his/her hands from the steeringwheel while driving or to shift focus from the outside environment inorder to receive feedback. This functionality is particularly beneficialto law-enforcement. Unlike in other professions, a law-enforcementofficer can be faced with situations, such as, for example, ahigh-speech chase or a vehicle stop, where even a momentary distractioncausing the officer to focus visual attention on the computer can causethe officer to loose control of the situation, resulting in possibleinjury or death to either the officer or to a bystander.

Embodiments of the present invention advantageously provide anapparatus, including a voice command interface program product, tocommunicate with a user during vehicle travel which can: receive voicecommands to operate vehicle computer application programs includingthose that can transmit queries to a remote computer; echo theidentified voice commands in either text-to-voice or pre-recorded humanvoice, as pre-selected by a user; and prioritize pre-recorded humanvoice responses to the transmitted queries, summarizing the responses,thereby delivering rapid, easily comprehended responses that allow theuser to maintain visual awareness of the surroundings at all times.

More particularly, embodiments of the present invention provide anapparatus to communicate with a user or users, e.g., law-enforcement,during remote vehicle operations that can enhance command communication,particularly in a high-noise environment. For example, in an embodimentof the present invention, an apparatus includes a vehicle mobile datacomputer system which includes a vehicle computer having memory to storedata therein and adapted to be positioned within a user vehicle, suchas, for example, a law enforcement or other civil service vehicle, todefine a vehicle mobile data computer. The vehicle mobile data computeris in communication with a remote host computer, e.g., a departmentserver, which is in communication with various external databases. Whenimplemented with law enforcement, the remote host computer is incommunication with law enforcement databases to supply law enforcementdata to officers positioned in a law enforcement vehicle. The vehiclemobile data computer preferably uses radio frequency to transmit and toreceive such data. The vehicle mobile data computer is also incommunication with at least one but preferably a plurality of audiospeakers and at least one audio input device. One or more vehicle mobiledata computer application programs are stored in the memory of themobile data computer. At least one of the vehicle mobile data computerapplication programs preferably is a mobile data communicationsapplication program adapted to communicate with the remote host computerthrough the vehicle mobile data computer, to thereby transmit andreceive data through the remote host computer.

A voice command interface program product, stored in the memory of thevehicle mobile data computer and in communication with the vehiclemobile data communications application program, is provided to enhanceuser communication with the remote host computer through the mobile datacomputer. The voice command interface program product includesinstructions to perform the operations of: receiving as audio inputthrough the at least one audio input device a voice command from theuser representing a command input; identifying the voice command byanalyzing the received audio input; echoing the identified voice commandthrough the at least one audio speaker; and transmitting or otherwiseconveying the command input to the mobile data communicationsapplication program. The echo preferably includes a preselected audiomessage verbally representing the identified voice command. The audiomessage preferably include data representing or repeating the identifiedvoice command in prerecorded human voice.

According to an embodiment of the present invention, an initializer isprovided. The initializer is adapted to assign or provide assignment ofa preferably very limited set of voice commands tailored to interfacewith various application programs for the vehicle mobile data computersystem, e.g., a vehicle mobile data computer application program.Advantageously, when operated on a Windows® operating system, theinitializer can be implemented by an initialization program orinitialization text file, such as an “.ini” file, or data entered intothe Windows® registry. Also, advantageously, the voice command interfaceprogram product is responsive only to limited sets of unique voicecommands each of which function to emulate a correspondingly uniquekeyboard key press or series of keystrokes. The initialization file canprovide a set of unique user-defined voice commands (e.g., “licenseplate” or “plate”) assigned to a correspondingly unique set of keyboardkeystrokes or series of keystrokes (e.g., “Alt-c, F4, F5, F11”) toselect an application program page, frame, text entry field, or othergraphical user interface input. The initialization file can also assignthe voice command interface program product to use a common spokenphonetic alphabet (e.g., “alpha” to “zulu” or “adam” to “zebra”)equating to a keystroke for corresponding letters of the alphabet (e.g.,“A” to “Z”), and Arabic numerals, e.g., “zero” to “nine” equating to akeystroke for corresponding numbers “0” to “9.”

In the preferred embodiment of the present invention, only a specificset of user-defined or specified voice commands assigned or defined byan initializer, and/or those alphanumeric descriptions of individualkeys associated with the vehicle mobile data computer keyboard, arecompared for voice command recognition by the voice command interfaceprogram product. This is a significant feature that advantageouslysubstantially improves voice command recognition accuracy and processingtime, especially in a high-noise environment. Rather than comparing thereceived audio input to a large database of terms or phrases as isnecessary with typical speech recognition programs, according toembodiment of the present invention, received audio input need only becompared to the specific commands necessary to operate each vehicle orpublic service department specific mobile data computer application orapplications. Having such a limited vocabulary of voice commands and nodictation text to search advantageously reduces the probability that anoise signal will be interpreted as a voice command.

The apparatus further preferably includes a communication enhancingprogram product stored in the memory of the vehicle mobile data computerand in communication with the vehicle mobile data communicationsapplication program to enhance communication with the remote hostcomputer through the vehicle mobile data computer. The communicationsenhancing program product is positioned to transmit enhanced audio data,e.g., law-enforcement data received from the vehicle mobile datacommunications application program, to the user through the at least oneaudio speaker. The enhanced audio data preferably includes a pluralityof preselected and prerecorded audio messages that are processed andplayed in response to the audio data received from the vehicle mobiledata communications program product to thereby summarize and prioritizemessages forming the requested audio data.

Embodiments of the present invention also provide a method of enhancingcommand communication in a high-noise environment between a user and auser vehicle mobile data computer. For example, according to anembodiment of the present invention, a method includes providing a voicecommand interface program product particularly adapted to interface witha vehicle mobile data computer running a vehicle mobile data computerapplication program requiring command input by providing vehicle mobiledata computer input device emulation. The method also includes providingan initializer preferably in the form of a program or initializationfile accessible by the voice command interface program product andconfigured to assign each of a plurality of preferably customer or userspecific/specified voice command terms or phrases, defining a pluralityof vehicle mobile data computer application program voice commands, to acorresponding plurality of vehicle mobile data computer input devicecommand inputs for the vehicle mobile data computer application program.The method also includes providing a plurality of phonetic alphabet datasets to provide command input of a plurality of letters corresponding toa plurality of vehicle mobile data computer input device inputs for thevehicle mobile data computer application program.

The method also includes assigning to at least some of the assignedvoice commands, and/or assigned letters and numbers, an audio message inthe form of an echo to acknowledge the voice command received from theuser. The echo is preferably in the form of a prerecorded human voicemessage. The method can further include editing by the user theinitializer to: assign an additional voice command terms or phrases to acorresponding vehicle mobile data computer input device input, inresponse to a modification of the vehicle mobile data computerapplication program; or edit a pre-assigned voice command assignment tochange a name of a voice command, change the command input (keystrokes),or change the audio data associated with the voice command, in order tosuit user preferences.

According to an embodiment of the present invention, another method caninclude accessing through an area network a user accessible web site orfile server to “download” or otherwise receive a voice command interfaceprogram product that is adapted to provide vehicle mobile data computerinput device emulation for a vehicle mobile data computer applicationprogram installed on a vehicle mobile data computer. The voice commandinterface program product advantageously can be provided and received bya user, preferably directly through the vehicle mobile data computer, inthe form of a single self-extracting executable program including thevoice command interface program product, negating the requirement fordelivery of other more physically embodied computer readable media,e.g., a CD, in order to install the voice command interface programproduct. The self-extracting executable program preferably also caninclude an initializer which is adapted to assign a plurality ofpreferably user-specified voice commands to a correspondingly unique setof keyboard key command inputs, i.e. keystrokes or series of keystrokes.Advantageously, the initializer can be pre-tailored for a specific usersneeds prior to downloading or can be tailored by the user thereafter.The method further includes executing the self-extracting executableprogram, to thereby install each of a plurality of components of thevoice command interface program product and the initializer in memory ofthe vehicle mobile data computer.

Preferably upon startup/initialization of a voice command interfaceprogram product, each of a plurality of user-tailored voice commands, tobe received as audio input from an audio input device and a phoneticalphabet, are assigned to a corresponding keyboard key command input tointerface the voice commands with a vehicle mobile data computerapplication program, to thereby provide command input to the vehiclemobile data computer application program. The numbers “zero” to “nine”equating to a keystroke for corresponding numerals “0” to “9” can alsobe assigned accordingly if not already done so in an operating systemspeech application program interface (SAPI). The initialization can alsoinclude assigning to at least some of the assigned voice commands,and/or assigned letters and numbers, an audio data message in the formof an echo, and preferably in the form of a prerecorded human voicemessage, to acknowledge the voice command received from the user.

Another method of enhancing command communication in a high-noiseenvironment between a user and a user vehicle mobile data computerincludes receiving voice commands and/or noise as audio input from theuser through an audio input device, and identifying the voice commandsby analyzing the received audio input. This is typically accomplished byperforming an acoustic description comparison, or other analysis knownto those skilled in the art, on or for the received audio input. Theanalysis is preferably only performed for a maximum of a predeterminedor preselected time delay or timeout. Advantageously, this functionalityallows quick recognition of the voice command not accompanied byexcessive noise, and provides an ability to suppress a noise signal thatwould otherwise cause excessive use of processor resources andexcessively delay a user's ability to convey a voice command,potentially distracting the user. This functionality also provides atime limitation for when a very low voice signal-to-noise ratio isencountered to allow the voice command to be repeated, if necessary,substantially without delay, rather than causing the user to bedistracted while waiting for the processor to try and likely fail toidentify the voice command from amongst the noise signal.

In an embodiment of the present invention, if a voice command isidentified, and if an echo function is enabled and audio data isassigned to the respective voice command, the voice command (orrepresentation thereof) is echoed through the vehicle or computer audiospeakers and the command input (e.g., keyboard emulation) correspondingto the identified voice command is sent to the vehicle mobile datacomputer application program. The echo preferably includes a preselectedaudio message, preferably prerecorded in human voice, verbally repeatinga representation of the voice command. When commanded to do so, thevehicle mobile data application program can either access vehicle memoryor access a remote computer to receive requested data. In anotherembodiment of the present invention, the functionality of eitherreceiving audio input or transmitting further identified voice commandsto the vehicle mobile data computer application program is automaticallydisabled if after a preselected time delay no voice commands areidentified.

Embodiments of the present invention also include a computer readablemedium that is readable by a computer to enhance command communicationin a high-noise environment between a user and a vehicle mobile datacomputer application program. For example, in an embodiment of thepresent invention, the computer readable medium includes a set ofinstructions that, when executed by a computer, such as, for example,vehicle mobile data computer, cause the computer to perform theoperations of: extracting data from an initializer configured to assigna plurality of user-specific or user-specified voice command terms orphrases, defining a plurality of vehicle mobile data computerapplication program voice commands, to a corresponding vehicle mobiledata computer input device command input (e.g., keyboard keystroke orkeystrokes) for the vehicle mobile data computer application program;and assigning the plurality of vehicle mobile data computer applicationprogram voice commands, responsive to the extracted data, tocorresponding vehicle mobile data keyboard key command inputs tointerface the voice commands with the vehicle mobile data computerapplication program.

The instructions also include those to perform the operation ofreceiving audio input through an audio input device when in a high noiseenvironment; and performing an acoustic description comparison on thereceived audio input, to thereby identify a set of preferably only thefollowing voice commands: voice command terms assigned in theinitializer, members of a phonetic alphabet associated to theinitializer to provide command input of a plurality of letters eachcorresponding to separate keyboard key input, and a plurality of numberseach corresponding to a separate numerical keyboard key input, toidentify each respective voice command, to thereby execute an associatedvehicle mobile data computer application program command input.

Particularly with respect to law-enforcement, voice command recognitionspeed and accuracy is essential in order to prevent unwarranteddistraction of an officer. Accordingly, by providing a very limited setof voice commands which are easy to assign and remember, the officer,even in a very high-stress situation, can easily convey, and the voicecommand interface program product can quickly recognize, all voicecommands necessary to operate the mobile data communications applicationprogram or other application programs. Further, selection of the verylimited set of necessary voice commands reduces the amount of systemresources and time required to analyze the audio input.

According to another embodiment of the present invention, a computerreadable medium includes instructions that, when executed by the vehiclemobile data computer, cause the computer to perform the operations of:receiving as audio input from the user through an audio input device,e.g., a stationary or wireless microphone, a voice command representinga vehicle mobile data computer application program command input; andidentifying the voice command by analyzing the received audio input. Theinstructions also include those to perform the operations of: echoingthe identified voice command through an audio speaker in response toidentification of the received voice command and/or release of apush-to-talk control key; and transmitting the corresponding commandinput to the vehicle mobile data computer application program. The echopreferably includes preselected audio data associated with theidentified voice command including a representation of the identifiedvoice command, preferably in the form of a prerecorded human voice audiomessage, verbalizing the representation of the identified voice command.

According to another embodiment of the present invention, a computerreadable medium includes instructions that, when executed by a computer,e.g., the vehicle mobile data computer, cause the computer to performthe operations of: receiving through an audio input device audio inputincluding a plurality of voice commands from the user; transmitting tothe vehicle mobile data computer application program the plurality ofvoice commands from the user received as audio input; and disabling,responsive to a preselected time delay, transmitting the plurality ofvoice commands to the vehicle mobile data communications applicationprogram or receiving audio input from the audio input device.

According to another embodiment of the present invention, a computerreadable medium includes instructions that, when executed by a computer,e.g., vehicle mobile data computer, cause the computer to perform theoperations of: receiving an audio input from the user through an audioinput device, e.g., a stationary or wireless microphone, that may or maynot include a voice command representing a vehicle mobile data computerapplication program command input; and analyzing the received audioinput to determine if the audio input includes a valid voice commandfrom a user. The instructions also include those to perform theoperation of rejecting the received audio input as including a voicecommand from the user after attempting to identify for a preselected orpredetermined time period/delay period a valid assigned voice command.The instructions also include those to perform the operation ofsubstantially immediately resuming awaiting receipt of a voice commandin response to termination of the delay period. Advantageously, thisfunctionality prevents the vehicle mobile data computer from excessivelywasting system resources in order to attempt to identify either a noisesignal as a voice command embedded among the noise signal or a voicecommand provided by the user but in such a high noise environment thatthe voice command signal to noise ratio is extremely low, makingidentification of the voice command extremely difficult and unlikely.Advantageously, by quickly resetting to receive either an initial voicecommand or a repeat of a previously attempted voice command, the user isprovided with less distraction and increased voice commandidentification reliability.

Advantageously, according to various embodiments of the presentinvention, the voice command interface program product functionsentirely in the “background,” without the need for direct user control.Also advantageously, the voice command interface program productintegrates with various Microsoft® SAPI engines and is compatible withvarious Windows® operating systems including Windows 95, Windows 98,Windows ME, Windows 2000, Windows NT, and Windows XP. Advantageously,the program product installer can be written using a common installationprogram, such as, for example, the Wise Installation System,InstallShield, available through Wise Solutions, Inc., Plymouth, Mich.Preferably the program product installer can also install both the voicecommand interface program product and selected Microsoft® SAPI engine,along with a user editable initializer.

Also advantageously, both the voice command interface program productand initializer are “plug-and-play” capable, and thus, are immediatelyready to function. After initial installation of the voice commandinterface program product, the user need not access any graphical userinterface to utilize the functionality of the voice command interfaceprogram product. Microphone training can be accessed through either avoice command or a keystroke combination, but this need not be aprerequisite to immediate use. When used with a Windows® operatingsystem, a system tray icon can be displayed to provide a ready visualreference of the operational status of the voice command interfaceprogram product, to thereby reduce any potential user confusion.Further, advantageously, a control selector, e.g., left control key orexternal input device switch, assignable by an initializer, e.g., a“.ini” file, can be provided to control whether the computer acceptsaudio (voice) input. Also advantageously, audio data, e.g., a short“.wav” file or files, can be assigned in the initializer to indicatemanipulation of the control selector.

Still further, advantageously, the user may select various user-tailoredconfigurations. For example, an “echo” can be selected or deselected fora specific command term or terms, and/or for letters or numbers. Alsofor example, the user can: add, modify, or delete voice command termsand their assigned keystroke combination; switch between phoneticalphabets; select or deselected key activation audio feedback; andassign or modify selection of a keyboard key to function as apush-to-talk key.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the features and advantages of theinvention, as well as others which will become apparent, may beunderstood in more detail, a more particular description of theinvention briefly summarized above may be had by reference to theembodiments thereof which are illustrated in the appended drawings,which form a part of this specification. It is to be noted, however,that the drawings illustrate only various embodiments of the inventionand are therefore not to be considered limiting of the invention's scopeas it may include other effective embodiments as well.

FIG. 1 is an environmental perspective view of a vehicle having anapparatus to enhance command communication in a high-noise environmentbetween a user and user vehicle mobile data computer system according toan embodiment of the present invention;

FIG. 2 is a schematic block diagram of an apparatus to enhance commandcommunication in a high-noise environment between a user and uservehicle mobile data computer system according to an embodiment of thepresent invention;

FIG. 3A is a schematic block diagram of a vehicle computer system of anapparatus to enhance command communication in a high-noise environmentbetween a user and user vehicle mobile data computer system according toan embodiment of the present invention;

FIG. 3B is a schematic block diagram of a microphone to enhance commandcommunication in a high-noise environment between a user and uservehicle mobile data computer system according to an embodiment of thepresent invention;

FIG. 4 is a schematic block diagram of memory of a vehicle computer ofan apparatus to enhance command communication in a high-noiseenvironment between a user and user vehicle mobile data computer systemaccording to an embodiment of the present invention;

FIG. 5A is a table illustrating a portion of an initializer forinitializing a voice command interface program product according to anembodiment of the present invention;

FIG. 5B is a table illustrating two phonetic alphabet examplesassignable by the initializer of FIG. 5A according to an embodiment ofthe present invention;

FIG. 6 is a front plan view of a form portion selection GUI according toan embodiment of the present invention;

FIG. 7 is a schematic flow diagram showing transmission of audio datarepresenting an echo of an identified voice command according to anembodiment of the present invention;

FIG. 8 is an environmental perspective view of a user in communicationwith the vehicle mobile data computer system illustrated in FIG. 1according to an embodiment of the present invention;

FIG. 9 is a schematic flow diagram of a method of enhancing commandcommunication in a high-noise environment between a user and a mobiledata computer system according to an embodiment of the presentinvention;

FIG. 10 is a schematic flow diagram of a method of enhancing commandcommunication in a high-noise environment between a user and a mobiledata computer system according to an embodiment of the presentinvention;

FIG. 11 is a schematic flow diagram of a method of enhancing commandcommunication in a high-noise environment between a user and a mobiledata computer system according to an embodiment of the presentinvention; and

FIG. 12 is a schematic flow diagram of a method of enhancing commandcommunication in a high-noise environment between a user and a mobiledata computer system according to an embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS.

The present invention now will be described more fully hereinafter withreference to the accompanying drawings, which illustrate embodiments ofthe invention. This invention may, however, be embodied in manydifferent forms and should not be construed as limited to theillustrated embodiments set forth herein. Rather, these embodiments areprovided so that this disclosure will be thorough and complete, and willfully convey the scope of the invention to those skilled in the art.Particularly, various embodiments of the present invention have beenfound to be effectively implemented with civil service organizationssuch as, for example, law enforcement, and thus readily provide forenhanced illustrations and descriptions. Such embodiments, unlessspecifically stated as such, are not limited to such organizations. Likenumbers refer to like elements throughout. Prime notation, if used,indicates similar elements in alternative embodiments.

As shown in FIGS. 1-12, embodiments of the present invention provide anapparatus for communicating with a user or users, e.g., law-enforcement,during remote vehicle operations that can enhance command communicationparticularly in a high-noise environment. According to embodiments ofthe present invention, the apparatus 30 can provide for both enhancedtransmission of data and superior organization, prioritization, anddelivery of requested data. Advantageously, the apparatus 30 ispreferably designed to be used in conjunction with existing mobile datacommunications systems such as, for example, the Premier MDC systemmanufactured by the Motorola Corporation of Schaumberg, Ill.

As perhaps best shown in FIGS. 1-4, generally, according to variousembodiments of the present invention, the apparatus 30 (see FIG. 2) caninclude a centrally located department server 35 having access to one ormore databases 38 to supply a vehicle user with data requested by thevehicle user; a vehicle mobile data computer system 40 (see FIGS. 1 and3A) positioned in a vehicle V and having a mobile data computerapplication program 43 (FIG. 4) to provide wireless communication withthe department server 35; a voice command interface program product 45to provide voice recognition of voice (verbal) commands to therebyprovide enhanced voice command control of the mobile data applicationprogram 43, particularly in a high-noise environment; and optionally acommunication enhancing program product 47 to transmit enhanced audiodata received from the mobile data application program 43 to the vehicleuser through an audio speaker 65 (see FIGS. 1 and 3A).

More specifically, according to an embodiment of the present invention,the apparatus 30 can include a remote host computer e.g., a department adepartment server 35 in communication with one or more remote vehiclemobile data computers 41 each positioned in a vehicle V. The departmentserver 35 preferably uses radio frequency to transmit and receive datato the vehicle mobile data computer 41. The department server 35 is alsopreferably in communication with at least one and preferably a pluralityof remote computers, and possibly a local computer having data definingdepartment databases 38, through a communications network 50 such as theInternet or a local area network. The department databases 38, forexample, can include local, regional, or national law enforcement datasuch as the Department of Highway Safety and Motor Vehicles (DHSMV)database and the National Crime Data Center (NCIC) database, just toname a few. These databases can provide time critical information suchas, for example, vehicle and individual background for law enforcementofficers when positioned in vehicles as well as for law enforcementpersonnel in a headquarters or control center.

As perhaps best shown in FIG. 3A, the vehicle mobile data computersystem 40 includes vehicle mobile data computer 41 preferably having aprocessor 51 to process communications and other type of data, a display53 in communication with the processor 51 to display data to a user,memory 55, e.g., RAM and ROM, also in communication with the processor51 for storing software and data therein, a power outlet 57 positionedto supply power to the processor 51 as well as other components of thevehicle mobile data computer 41, a keyboard 59 in communication with theprocessor 51 to supply a user interface to the user. The vehicle mobiledata computer system 40 also preferably includes an RF transceiver 61 incommunication with the processor 51 to transmit and receive data, andaudio input device such as, for example, a microphone 63 (described indetail later) to provide voice command input to the vehicle mobile datacomputer 41, and at least one but preferably a plurality of speakers 65for providing voice command acknowledgments and for deliveringdepartment data in audio form. The speakers 65 are preferably externalspeakers but can be speakers built into the computer or a preexistingspeaker associated with a non-computer dispatching system as understoodby those skilled in the art. As shown in FIGS. 1 and 3A, the vehiclemobile data computer system 40 also preferably includes one or moreprinters 67 or other computer peripherals in communication with theprocessor 51. When used in a law enforcement vehicle, for example, theseprinters 67 can be used for printing accident reports, tickets,warnings, towing citations, or filling in or populating other lawenforcement forms.

As perhaps best shown in FIG. 4, the vehicle mobile data computer 41preferably includes operating system and computer application programsknown to those skilled in the art, such as, for example, a mobile datacommunications application program 43, stored in memory 55 and providedto facilitate user communication with the department server 35 throughthe vehicle mobile data computer 41 and to transmit and receivedepartment data from the one or more databases 38 through the departmentserver 35 (see FIG. 2). The vehicle mobile data computer 41 can alsoinclude a communication enhancing program product 47 stored in memory 55of the vehicle mobile data computer 41 and in communication with themobile data computer application program 43 to enhance usercommunication with the department server 38 through the vehicle mobiledata computer 41.

The communications enhancing program product 47 includes instructions toperform the operation of transmitting enhanced department audio datareceived from the mobile data computer application program 43 to theuser through the audio speakers 65. Such enhanced department dataincludes preselected and prerecorded audio messages provided in responseto the department data received by the mobile data computer applicationprogram 43 from the department server 35. One such apparatus or systemproviding such communications enhancing program product 47 is perhapsbest described in co-pending U.S. patent application Ser. No. 10/656,487by Rubenstein titled “Apparatus for Communicating with Law EnforcementDuring Vehicle Travel and Associated Methods,” and U.S. Pat. No.6,621,422 by Rubenstein titled “Apparatus for Communicating with LawEnforcement During Vehicle Travel and Associated Methods,” eachincorporated herein by reference in their entirety.

The vehicle mobile data computer 41 includes a voice command interfaceprogram product 45 stored in the memory 55 of the vehicle mobile datacomputer 41 and in communication with the mobile data computerapplication program 43 to enhance officer communication with thedepartment server 38 through the vehicle mobile data computer 41. Thevoice command interface program product 45 can be in the form ofmicrocode, programs, routines, and symbolic languages that provide aspecific set for sets of ordered operations that control the functioningof the hardware and direct its operation, as known and understood bythose skilled in the art.

The voice command interface program product 45 includes instructions toperform the operation of receiving as audio input a verbal command fromthe user representing a corresponding command input from the userthrough the microphone 63, and identifying the verbal command byanalyzing the received audio input. According to a preferredmethodology, an acoustic description of text corresponding to a specificset of voice commands stored in a vocabulary database (not shown) iscompared against an acoustic signal generated by the utterance of thevoice command to be recognized. The audio input received by themicrophone 63 includes not only verbal or voice commands representing acorresponding command input defined as one or a series of keyboard keyinputs, but also noise including continuous and repetitive noise andnoise caused by reverberation of the voice commands from adjacentvehicle V structures.

The voice command interface program product 45 advantageously candistinguish between voice commands spoken by the user and noise. Properselection of the microphone 63 can, however, significantly aid inperforming such differentiation. There are numerous types of microphonetransducers used for a variety of applications. The most commondistinctions between various microphones are: type of microphone, e.g.,dynamic, boundary, condenser, ribbon, array, and directional pattern,e.g., unidirectional and omni-directional. For example, in an embodimentof the present invention, the microphone 63 can be an Andrea DA-350 quadarray microphone manufactured by Andrea Electronics Corp., Melville N.Y.

Although embodiments of the present invention are not limited to theDA-350 array microphone, advantageously, the DA-350 microphone, forexample, is specifically designed for use in a vehicle. This arraymicrophone provides not only directional focusing on and enhancing ofthe user's voice, but also overcomes high-noise environment factorsassociated with a moving vehicle. The DA-350 array microphone utilizesmultiple microphones (transducers), unique software algorithms, and adigital signal processor to adaptively focus microphone sensitivity onthe driver's voice, to thereby enhance voice reception and reduceextraneous noise. The DA-350 microphone, for example, can analyze audiosignals coming from each individual microphone transducers in order tocreate a narrow reception cone having an angle of reception ofapproximately 25 degrees either side of centerline (preselected azimuth)and forming an area of reception. This reception cone is characterizedby having a voice frequency response of between approximately −30 dBVand −45 dBV between a frequency range of 1 kHz to 3 kHz within the areaof reception, and having an extremely steep drop in noise frequencyresponse outside the area of reception to that of approximately −65 dBVto −85 dBV in that same frequency range.

The DA-350 microphone can differentiate between audio signals comingfrom its preselected azimuth, effectively rejecting noises or voicescoming from other directions including those emanating from the audiospeakers, other passengers, or due to reverberations. Further, theDA-350 microphone provides an ability to adjust focus to the movement ofthe speaker during dictation. The DA-350 microphone includes a digitalsignal processor which separates voice frequency from the noise, invertsthe noise, and subtracts the noise from the voice signal, providing areduction in noise sources of typically between 25 dB to 30 dB. Note,other microphones, such as, for example, the Andrea Superbeam® ArrayMicrophone, also manufactured by Andrea Electronics Corp., provides asubstitute having features similar to that described above.

Accordingly, in an embodiment of the present invention, the microphone63 can be configured as an array microphone adapted to be connected to avehicle V structure, e.g., dashboard or visor, positioned separate andspaced apart from the user to allow hands-free operation when receivingvoice commands from the user (see FIG. 1). The microphone 63 includes atleast two, but preferably four unidirectional microphone transducers 71with individual audio channels adapted to provide a directional area ofaudio input sensitivity having an adjustable angle and area ofreception. This type of array microphone enhances detection of theverbal commands by allowing the user to manually focus the microphonereception zone on the user, significantly eliminating background noisefrom the various sources such as, road, engine, wind, fan, and radio.Further, according to this embodiment of the present invention, themicrophone 63 does not require individual user training. Thus,advantageously, a different user can enter the vehicle V and beimmediately ready to utilize the voice command interface program product45. Nevertheless, the voice command interface program product 45 caninclude microphone training functionality preferably selectable througheither a voice command or keystroke combination, e.g., ctrl-alt-m.

To further enhance distinguishing the verbal commands uttered by theuser from other noise, provided can be an audio input processing(noise-canceling) program product 73 adapted to interface with themicrophone 63. The audio input processing program product 73 includesinstructions particularly adapted to enhance reception of the pluralityof verbal commands to perform the operation of automatically adjustingor shaping the angle and area of reception of the audio input to themicrophone 63, responsive to detection of audio input from the user, tofocus the array on the user's voice, substantially reducingreverberation and other non-repetitive extraneous noise; and byattenuating continuous and repetitive noise, substantially removing orreducing voice command recognition latency. The audio input processingprogram product 73 can be installed in the memory of a digital signalprocessor 64 associated with the microphone 63 or in memory, e.g.,memory 55, of the vehicle mobile data computer 41. The combination of aunidirectional array microphone 63 and audio input processing programproduct 73 can enable near optimal performance by overcoming thehigh-noise environment of a moving vehicle V, advantageously providingthe voice command interface program product 45 a substantially clearvoice command signal.

Advantageously, the combination can provide a significant differentialin voice frequency response within the area of reception and backgroundnoise response outside the area of reception of, for example,approximately between 20 dBV and 35 dBV between the frequency range of 1kHz to 3 kHz, and, for example, at least 25 dBV at the frequency of 1kHz. Further, as a result of the combination, the differential in voicefrequency response within the area of reception and background noiseresponse outside the area of reception is preferably at least 30 dBV atthe frequency of 1 kHz, and more preferably at least 35 dBV at thefrequency of 1 kHz.

According to an embodiment of the present invention, an initializer 75is provided that can assign or provide assignment of a preferably verylimited set of voice commands tailored to interface with variousapplication programs for the vehicle mobile data computer system 40,e.g., mobile data computer application program 43. As perhaps best shownin FIGS. 5A, 5B, and 6, the initializer 75 can provide a set of uniquevoice commands (labels) 79, e.g., “license plate” or “plate,” assignedto a correspondingly unique set of keyboard keystrokes or series ofkeystrokes 81, e.g., “Alt-c, F4, F5, F11,” to select an applicationprogram page or frame 83, data entry field 85, or other graphical userinterface input, and can assign the voice command interface programproduct 45 to use at least one of preferably the two most common spokenphonetic alphabets 87 (FIG. 5B), e.g., “alpha” to “zulu” or “adam” to“zebra,” equating to a keystroke for corresponding letters of thealphabet (e.g., “A” to “Z”).

According to various embodiments of the present invention, the voicecommand interface program product 45 is particularly adapted to beoperated on a Windows® operating system configured with a speechapplication program interface (SAPI) engine. When so configured, theinitializer 75 can be implemented by an initialization file, such as a“.ini” file, or data entered into the Windows® registry, or by variousother means known to those skilled in the art. The initializer 75 ispreferably fully editable by the user to provide the user an ability totailor the various voice commands 79 to those typically familiar to theuser and to add voice commands 79 to coincide with modifications orupdates to the mobile data computer application program 43 or any otherapplications to be interfaced with the voice command interface programproduct 45. Further, through editing of the initializer 75, the user canchange the selection between the at least two phonetic alphabets 87, asdesired.

Advantageously, only a specific set of user-defined or specified voicecommands assigned or defined by an initializer 75, and/or alphanumericdescriptions of individual keys associated with the keyboard 59, arecompared for voice command recognition by the voice command interfaceprogram product 45. This is a significant feature that advantageouslysubstantially improves voice command recognition accuracy and processingtime, especially in a high-noise environment. Rather than comparing thereceived audio input to a large database of terms or phrases as isnecessary with typical voice recognition programs, according toembodiment of the present invention, received audio input need only becompared to the specific commands necessary to operate the mobile datacomputer application program 43. Having such a limited vocabulary ofvoice commands and no dictation text to search advantageously reducesthe probability that a noise signal will be interpreted as a voicecommand.

For example, as perhaps best shown in FIG. 5A, 5B, and 6, the voicecommand interface program product 45 can be implemented to onlyrecognize voice commands listed as unique voice command (labels 79),e.g., “plate,” assigned to the correspondingly unique keyboard keystrokeor series of keystrokes 81 (e.g., “Alt-c, F4, F5, F11”) to select anapplication program page or frame 83 to enter a license “plate” number86; one of two spoken phonetic alphabets 87 as pre-selected in theinitializer 75 (e.g., “alpha” to “zulu” or “adam” to “zebra”) equatingto a keystroke for corresponding letters of the alphabet (e.g., “A” to“Z”) to select alphabetical letters of the license “plate” number 86;and the spoken numbers “zero” to “nine” equating to a keystroke for thecorresponding Arabic numerals (e.g., numerals “0” to “9”) to selectnumerals of the license “plate” number 86. Note, alternative languagesor numbering schemes are within the scope of the present invention.

After the voice command is identified by the voice command interfaceprogram product 45, the voice command interface program product 45 canprovide an “echo” of the identified voice command through the audiospeaker 65, and preferably upon the user acknowledging that the voicecommand was correctly interpreted by the voice command interface programproduct 45, in response to hearing the echo, transmitting the commandinput to the mobile data computer application program 43. The echo,preferably in the form of audio data, such as, for example, an audiofile or combination of files 89 (e.g., .wav file) assigned to a voicecommand by the initializer 75 is outputted or otherwise transmitted or“played” on the audio speaker 65. The echo can include a preselected andprerecorded audio message verbally repeating the identified verbalcommand to include individual letters from the phonetic alphabets 87 andnumbers, described previously. Particularly, at least portions of theaudio data associated with the identified verbal command or commandstring can include an audio message representation of the identifiedcommand in prerecorded human (clear) voice.

According to embodiments of the present invention, the voice commandinterface program product 45 can include a plurality of preselected andprerecorded human voice audio messages 77 preferably stored in memory 55and assigned during initialization to various preselected voicecommands. According to another embodiment of the present invention, theecho for the various voice commands can be enabled or disabled either asa group or individually for selected individual voice commands, eitherwithin the initializer 75 or through use of a control selector key onkeyboard 59. Further, audio data (e.g., the human voice audio message77) assigned to individual voice commands can be modified or deletedand/or new or additional audio messages can be added to a particularvoice command (label 79). This can be accomplished preferably through auser editing the initializer 75.

As shown in FIG. 7, the voice command interface program product 45preferably formulates the echo message to be transmitted by matching(block 101) the identified voice command (label 79) with thecorresponding preselected and pre-recorded audio message 77 (see FIG.5A), rapidly returning or transmitting (block 103) an echo message tothe user through the speakers 65 (see FIG. 1) to provide the userpositive feedback. Although providing a text-to-voice echo message forthe entire voice command is within the scope of various embodiments ofthe present invention, the human voice audio messages 77 for at leastthe main portion of the voice command are preferred because human voiceaudio messages 77 can be much more intelligible and can be preselectedto be male, female, soothing, urgent sounding or have other desiredqualities in addition to selected languages, accents, intonations orother voice language benefits instead of what is often robotic, stiff orstilted sounding from conventional text-to-voice messages.

As described previously, noise can affect the ability of the voicecommand interface program product 45 to identify the predetermined orpreselected voice commands. More particularly, some noise signals canhave similar qualities as that of one or more voice commands. The resultof such noise signals can be inefficient use of processor 51 resourcesin an attempt to identify the noise signals as a voice command. This canresult in a significant distraction to a vehicle user because the usermust generally either determine that the processor 51 is not busy priorto providing a voice command or provide such voice command, anticipatingthat the voice command will be properly received. Thus, according to thepreferred embodiment of the present invention, an icon 93 (FIG. 6) isprovided on the graphical user interface of the video display 53 to showthe status of the processor 51 with respect to receptiveness ofreceiving a voice command. For example, the icon 93 can display variouscolors indicating system status, e.g., green to indicate ready toreceive voice commands, yellow to indicate busy, and red to indicate anerror has occurred, or can display any other combination of colors orsymbols thereof.

Where the voice command requires a call, such as, for example, “plate,”to go to a license plate entry page 83, followed by a set of letters andnumbers identifying the license plate number 86, e.g., “ABC 12D,” to beentered in a text field 85, the user may be confused as to which part ofthe voice command needs to be provided. Thus, according to anothermethodology of enhancing command communication, especially in ahigh-noise environment, the voice command interface program product 45can include instructions that are responsive to a preselected orpredetermined time delay or time-out, e.g., less than approximatelythree seconds, to perform the operation of rejecting the received audioinput as being a voice command from the user; and resetting to receiveanother voice command from the user. Advantageously, this functionalityreduces the effect of noise by preventing inefficient use of theprocessor 51 resources in an attempt to identify the noise as a voicecommand, and enhances functionality of the voice command interfaceprogram product 45 by reducing confusion and distraction of the user,thus increasing reliability. If the audio input is merely noise,excessive use of resources of the processor 51 should be negated. If theaudio input was a mix of noise and a voice command, if no echo isreceived after expiration of the preselected or predetermined timedelay, intuitively the user will know that the voice command was notreceived or otherwise not identified, so that the user may repeat thevoice command with little delay.

According to embodiments of the present invention, the voice commandinterface program product 45 includes instructions that respond to usermanipulation of a preselected control function selector, e.g., akeyboard key or an external input device (not shown), to perform theoperation of enabling receiving audio input from the microphone 63 totransmit or otherwise provide to the mobile data computer applicationprogram 43 the command inputs received and identified as voice commands(audio input) by the voice command interface program product 45. Forexample, the leftmost control key 91 of the keyboard 59 can be assignedto perform the function of a push-to-talk control selector. The userdepresses the control key 91, enabling the microphone 63, and provides avoice command, which is received by the microphone 63. Upon eitherinitial release of the control key 91 or again pressing and releasingthe control key 91, the microphone 63 is disabled, disabling furtheraudio input from the microphone 63. Note, according to the preferredembodiment of the present invention, the selection of which controlselector provides the push-to-talk function and the functionality of thecontrol, performed by the selected control selector, are both fullyeditable by the user through editing the initializer 75.

According to an alternative embodiment of the present invention, similarto that described above, a control selector, such as the leftmostcontrol key 91 of the keyboard 59, can be assigned to perform thefunction of a push-to-talk control selector, whereby the user depressesthe control key 91 to enable the microphone 63. Rather than disablingaudio input from the microphone 63 by releasing or again pressing andreleasing the control key 91, this function can be performedautomatically in response to a preselected or a predetermined time delayor a time-out.

In response to identification of the voice command, the voice commandinterface program product 45 provides an echo of the voice commandthrough the audio speakers 65. The control input associated with thevoice command can then be conveyed to the mobile data computerapplication program 43, preferably after: receiving a confirmation voicecommand from the user, such as, for example, “send”; receiving acorrection command, such as, for example, “clear” or “backspace”; orstanding by and awaiting additional user input. For example, a usergives the voice command “license plate” or “plate.” After the voicecommand interface program product 45 provides an echo of the voicecommand back to the user and sends the corresponding command input tothe mobile data computer application program 43, the mobile datacomputer application program 43 will be awaiting entry of a licenseplate number 86, e.g., “ABC 12D.”

After the user verbally provides the license plate number 86, e.g., “ABC12D,” which can also be echoed, the mobile data computer applicationprogram 43 will be awaiting the command input corresponding to the“send” voice command. Advantageously, according to an embodiment of thepresent invention, a series of command inputs can be concatenated byconcatenating corresponding voice commands. For example, the user canstate the combined voice commands of “plate”-“ABC 12D”-“send.” The voicecommand interface program product 45 can then provide an echo of eitherparts of the combined voice command or the whole combined voice commande.g., “plate”-“ABC 12D”-“send.” The vehicle mobile data computer 41,upon receiving the requested license plate number, through thecommunication enhancing program product 47, can announce receipt of therequested information and await authorization to output such informationthrough the speakers 65 (FIG. 1), automatically output such informationupon receipt, or perform a combination thereof.

In order to aid the user in determining that the preselected controlselector (e.g., left control key 91) was properly depressed, anindication preferably in the form of audio data, such as, for example,an audio file (e.g., .wav file) can be assigned to the control selectorto be outputted or otherwise transmitted or “played” on the audiospeaker 65 upon activation of the respective control selector.Correspondingly, a preferably moderately distinct set of audio data,also preferably in the form of an audio file, can be assigned to thecontrol selector to indicate release or deactivation of sectionselector. Advantageously, providing such audible indications helpsreduce the potential for a vehicle accident by negating any need for theuser to look at the control selector to determine if it was properlymanipulated. Note, according to an embodiment of the present invention,the functionality of providing an audible indication of activation ofthe preselected control selector (e.g., left control key 91) can be,itself, controlled either by a separate control selector or a sequenceof manipulations of the preselected control selector. This functionalitycan be assigned within the initializer 75 and edited by the user.

As an alternative to having to manipulate a control selector (e.g.,control key 91) for each instance the user wishes to convey a voicecommand, the voice command interface program product 45 can includeinstructions to perform the operation of monitoring the audio input fora specific command assigned to perform the function of enablingreceiving of other voice commands. For example, the word “Christine” orother selected unique name for the “computer” can be assigned by theinitializer 75 to perform the push-to-talk function. Thus, in order to“turn on” the functionality of the voice command interface programproduct 45, the user states “Christine” which can be identified andechoed through the area speaker 65. The user can then convey the otherof the plurality of voice commands, e.g., “plate,” “cancel,” “clear,”“send.” In this configuration, prior to stating the voice command“Christine,” all other commands would be otherwise ignored even ifreceived. Advantageously, this functionality allows entirely hands-freemanipulation of the mobile data computer application program 43 whilepreventing inadvertent reception or misinterpretation of noise or voicecommands embedded in conversational speech not directed to the mobiledata computer application program 43, such as speech with a passenger orradio dispatcher.

Correspondingly, the phrase “Christine standby” or other unique word orphrase can be assigned to command disable the functionality of the voicecommand interface program product 45, preferably with the exception ofreceipt and processing of the preselected “on” voice command, e.g.,preferably another “Christine.” Alternatively, the voice commandinterface program product 45 can include instructions, responsive to apreselected time delay, such as, for example, 10 seconds of notreceiving a voice command, to perform the operation of disabling thefunctionality of the voice command interface program product 45. Againthis disabling function is preferably implemented with the exception ofallowing receipt and processing of the preselected “on” voice command,e.g., “Christine.”

As perhaps best shown in FIG. 8, the apparatus 30 can also include awireless microphone assembly 95 including a microphone 97 and audiospeaker 98 adapted to provide wireless audio communication between thevehicle mobile data computer 41 and the user when outside the departmentvehicle V to transmit the voice commands from the user to the mobiledata computer application program 43 (see FIG. 4) through the voicecommand interface program product 45, to thereby provide command inputto the mobile data computer application program 43. Also provided is theability to receive an audio echo for each of the voice commands, tothereby provide the user verification of correct identification of eachrespective voice command by the voice command interface program product45. In the preferred configuration, the wireless microphone assembly 95transmits data to, and receives data from, the vehicle transceiver 61.Further, the voice command interface program product 45 is preferablyselected to be either continuously on, in which case, mute switch 99 cancontrol audio input to the microphone 97, or can be voice activatedusing a preselected “on” voice command.

As shown in FIGS. 1-12, embodiments of the present invention provide amethod of enhancing command communication in a high-noise environmentbetween a user and a user vehicle mobile data computer. For example, asperhaps best shown in FIG. 9, according to an embodiment of the presentinvention, a method includes providing a voice command interface programproduct 45 (block 121) particularly adapted to interface with a vehiclemobile data computer 41 (see FIGS. 1 and 3A) running a vehicle mobiledata computer application program 43 (see FIG. 4) requiring commandinput by providing vehicle mobile data computer input device emulation.

The method also includes providing an initializer 75 (block 123)accessible by the voice command interface program product 45 andconfigured to assign each of a plurality of preferably customer or userspecific/specified voice command terms or phrases, e.g., labels 79 (seeFIG. 5A), defining a plurality of vehicle mobile data computerapplication program voice commands, to a corresponding plurality ofvehicle mobile data computer input device command inputs, e.g.,keystrokes 81, for the vehicle mobile data computer application program43 (block 125). The initializer 75 can be in the form of a text file ora program which can assign the preselected set of voice commands to acorresponding set of keyboard keystrokes or series of keystrokes orother command inputs to thereby select an application program page orframe 83 (see FIG. 6), data entry fields 85, or other graphical userinterface input.

The method also includes providing a plurality of phonetic alphabet datasets (see e.g., FIG. 5B) to provide command input of a plurality ofletters corresponding to a plurality of vehicle mobile data computerinput device inputs for the vehicle mobile data computer applicationprogram 43 (block 127). Correspondingly, the initializer 75 can assign(block 129) the voice command interface program product 45 to use atleast one of preferably the two most common spoken phonetic alphabets 87(e.g., “alpha” to “zulu” or “adam” to “zebra”) equating to a keystrokefor corresponding letters of the alphabet (e.g., “A” to “Z”). Thenumbers “zero” to “nine,” equating to a keystroke for correspondingnumerals “0” to “9,” can also be assigned accordingly, if not alreadydone so in an operating system SAPI.

The method also includes assigning an audio message (block 131) in theform of an echo to at least some of the assigned voice commands, and/orassigned letters and numbers, to acknowledge the voice command receivedfrom the user (see FIG. 5A). The audio message is preferably in the formof a prerecorded human voice message 77 (see FIG. 4) that is preferablyactivated by manipulation of a control function selector, e.g., leftcontrol key 91 (described further below), or by a time delay institutedafter identifying the voice command. For example, as perhaps bestillustrated in FIGS. 1, 5, and 6, with respect to a typicallaw-enforcement vehicle mobile data computer application program 43, theuser depresses the left control key 91 and provides the voice command“plate.” Upon release of the key, a preselected time delay, or acombination thereof, the voice command interface program product 45 willactivate a corresponding keystroke combination to access a correspondingapplication program screen or text entry field. In this example, asillustrated in FIG. 5A, the keystroke combination “Alt-c, F4, F5, F11”would be performed. As illustrated in FIG. 6, the user would thenprovide a voice command such as“Alpha”-“Bravo”-“Charlie”-“one”-“two”-“Delta” corresponding to licenseplate number “ABC12D.” The voice command interface program product 45would then cause activation of the keystrokes “a”-“b”-“c”-“1”-“2”-“d,”and, if selected to do so, provide a corresponding echo of the licenseplate number. The license plate data can be either automaticallytransmitted to the department server 35 (see FIG. 2) or the user wouldthen provide another voice command, such as “send,” to do so if the echoproperly repeated the license plate number “ABC12D,” or “clear” or“backspace,” if the interpretation was incorrect. Note, each voicecommand or a preselected subset of the voice commands could be echoed,if selected to do so. Further, the echo need not be an actual repeat ofthe actual voice command. For example, the voice command “send” can bereturned as “sending.”

As stated above, the method can also include assigning or designating acontrol function selector (block 133), e.g., the left control key 91 ofthe keyboard 59 (see FIG. 1), or other input device of the vehiclemobile data computer 41, as a voice command interface program producton-off operation control selector defining a push-to-talk switch. Anaudible indication, preferably in the form of an audio file to indicateactivation and/or deactivation of the control selector, can also beassigned in order to aid the user in determining that the preselectedcontrol selector (e.g., left control key 91) was properly manipulated.The audio data or audio file assigned can be different depending uponthe function performed, e.g., selection “on” or selection “off,” or canbe the same file to indicate both selection and deselection.

The method can further include editing the initializer 75 (see FIG. 5A)by a user to assign an additional command term or phrase to acorresponding keyboard key or other vehicle mobile data computer inputdevice input specifically tailored to the vehicle mobile data computerapplication program 43; or to change the command input, e.g., keystrokes81, for a pre-existing voice command term or phrase, in response to amodification of the vehicle mobile data computer application program 43.A pre-assigned voice command can also be edited to change theidentification or name of the voice command (label 79); to delete thevoice command (label 79), in response to a desired grammatical change bythe user; or to change the audio data, e.g., audio file 89, associatedwith the voice command, in order to suit user preferences.

As perhaps best shown in FIG. 10, a preferred methodology of performingthe steps of providing a voice command interface program product 45 andproviding initializer 75 includes accessing (block 141), preferablythrough a communications or area network 50 (see FIG. 2), a useraccessible web site preferably positioned on a Web server (not shown),to “download” or otherwise receive (block 143) a voice command interfaceprogram product 45 (see FIG. 4) that is adapted to provide vehiclemobile data computer input device emulation for a vehicle mobile datacomputer application program 43 installed on a vehicle mobile datacomputer 41 (see FIG. 1). The voice command interface program product 45can be provided and received by a user, preferably directly through thevehicle mobile data computer 41, in the form of a single self-extractingexecutable program that includes the voice command interface programproduct 45. The self-extracting executable program preferably installsan initializer 75 (see FIG. 5A) which is adapted to assign a pluralityof preferably user-specified voice commands to a correspondingly uniqueset of keyboard key command inputs, i.e. keystrokes or series ofkeystrokes 81. The method includes executing or running theself-extracting executable program, to thereby install each of aplurality of components (block 145) of the voice command interfaceprogram product 45 and the initializer 75 in memory 55 of the vehiclemobile data computer 41.

As perhaps best shown in FIG. 11, provided is a method of enhancingcommand communication in a high-noise environment between a user and auser vehicle mobile data computer 41. Preferably uponstartup/initialization (block 151) of a voice command interface programproduct 45 (see FIG. 4), each of a plurality of user-tailored voicecommands, to be received as audio input from a microphone 63, 97 (seeFIGS. 1 and 8), and a phonetic alphabet (see FIG. 5B), are assigned to acorresponding keyboard key command input, e.g., keystrokes 81, tointerface the voice commands with a vehicle mobile data computerapplication program 43, to thereby provide command input to the vehiclemobile data computer application program 43. The numbers “zero” to“nine,” equating to a keystroke for corresponding numerals “0” to “9,”can also be assigned accordingly if not already done so in an operatingsystem SAPI.

The initialization can also include assigning, to at least some of theassigned voice commands and/or assigned letters and numbers, an audiodata message in the form of an echo to acknowledge the voice commandreceived from the user. The echo is preferably in the form of aprerecorded human voice audio message 77. The initialization can furtherinclude designating a control function selector, e.g., the left controlkey 91 of the keyboard 59 (see FIG. 1), or other input device of thevehicle mobile data computer 41, as a voice command interface programproduct on-off operation control selector defining a push-to-talkswitch. Note, the push-to-talk switch (control selector) can also beassigned audio data to indicate a change in state of the assignedcontrol selector (see FIG. 5B).

The method can also include enabling an audio input device (block 153),e.g., the microphone 63, 97 (see FIGS. 1 and 8), to allow the voicecommand interface program product 45 to provide a verbal interface withthe vehicle computer application program 43. With respect to the vehiclemounted microphone 63, this is typically accomplished by depressing orotherwise manipulating the left control key 91, if so assigned suchfunction, but may include un-muting the microphone 63, if so configured.In one configuration, the left control key 91 is depressed and held toallow the user to provide voice commands. In another configuration, theleft control key 91 need only be depressed momentarily and released, themicrophone 63/audio input being enabled for a predetermined orpreselected time delay, and disabled thereafter, or disabled after apredetermined or preselected time period without receiving a voicecommand from the user. In still another configuration, the audio inputremains enabled continuously. With respect to the wireless microphoneassembly 95, enabling the microphone 97 is typically accomplished by acombination of use of a power button (not shown) and mute switch 99.

Regardless of the configuration, the method includes receiving voicecommands and/or noise as audio input from the user through themicrophone 63, 97 (block 155), and performing an acoustic descriptioncomparison or other analysis known to those skilled in the art on or forthe received audio input (block 157). If the audio input is determinedto include one or more voice commands assigned during initialization, asignal is transmitted to execute an associated one or more vehiclecomputer application program command inputs. The analysis is preferablyonly performed for a maximum of a predetermined or preselected timedelay or timeout. Advantageously, this functionality allows quickrecognition of the voice command not accompanied by excessive noise, andprovides an ability to suppress a noise signal that would otherwiseexcessively use processor resources and/or excessively delay a user'sability to convey a voice command, potentially distracting the user.This functionality provides a time limitation to allow the voice commandto be repeated, if necessary, substantially without delay, when a verylow voice signal-to-noise ratio is encountered; rather than cause adistraction to the user while the user waits for the processor 51 totry, and likely fail, to identify the voice command from amongst thenoise signal. A system tray icon 93 can be displayed to further indicatethat audio input is being processed to further orient the user as to theavailability of providing additional voice commands.

If a voice command is identified (block 159) and if the echo function isenabled and audio data is assigned to the respective voice command(block 161), preferably upon release of the left control key 91 or aftera predetermined or preselected time delay, the voice command is echoed(block 163) through the audio speakers 65 (see FIG. 1) and the commandinput, e.g., keyboard emulation, is sent (block 165) to the vehiclecomputer application program 43 (see FIG. 4). The vehicle applicationprogram 43 can then either access vehicle memory 55 or access adepartment server 35 (see FIG. 2) to receive requested data (block 167).Audio data, indicating a change in state of the left control key 91 (seeFIG. 1), can be sent to the audio speakers 65, if such functionality wasassigned. Also, according to an embodiment of the present invention, theuser may manipulate other control keys, which can be assigned to controlwhether the audio data associated with the control key 91 and/or theaudio messages 77 associated with the various voice commands, areenabled. Further, according to an alternative embodiment of the presentinvention, the enabling or disabling of audio messages 77 can beprovided individually for each voice command in a subset of theplurality of assigned voice commands. Still further, a communicationenhancing program product 47 can extract the requested data, summarizethe data, and verbally announce to the user the requested data (block169).

In an embodiment of the present invention, as described previously,rather than having to depress and hold the left control key 91 or otherselected control selector, in order to provide voice commands, the userneed only depress the left control key 91 once to enable systemfunctionality, after which the user may provide voice commands, asdesired, to further control access to such system functionality. Thiscan be an important feature, especially when implemented in conjunctionwith a mobile or wireless microphone assembly 95 (see FIG. 8).Correspondingly, in this embodiment of the present invention, the methodincludes: transmitting the voice commands to a vehicle computerapplication program 43 from outside the vehicle V through the microphone97; providing command input to the vehicle computer application program43 through a voice command interface program product 45; and receivingan audio echo of the voice commands through either an audio speaker 96,98, also carried by the user, to thereby provide the user verificationof correct receipt of each voice command, and thus, correct commandinput.

As perhaps best shown in FIG. 8, the microphone assembly 95 is adaptedto be carried by the user positioned outside a user vehicle V, tothereby provide the user a substantially hands-free ability to transmitvoice commands to a receiver, such as, for example, either transceiver61 (see FIG. 1) or an alternative transceiver (not shown) directlyconnected to the vehicle V and in communication with the vehicle mobiledata computer 41. Note, the microphone assembly 95 need not remaincontinuously on, unless desired by the user. As described previously, tocontrol or limit audio input to the vehicle mobile data computer 41, themicrophone assembly 95 can include a mute button 99 and/or the voicecommand interface program product 45 can include functionality to allowspecific commands to either activate or render dormant the voice commandinterface program product 45.

As shown in FIG. 12, advantageously, an embodiment of the presentinvention also includes a method of enhancing command communication in ahigh-noise environment between a user and a user vehicle mobile datacomputer system which includes forming a log file to log each attempt atrecognizing an audio input (block 181); and logging in the log file eachattempt in response to receiving such respective audio input (block183). Each entry into the log file can include data indicating the date,time (including seconds), and results of the audio input analysis. Themethod can also include requesting the log file from the user (block185); and performing a statistical analysis on the log file to analyzerecognition failure rates (block 187). Advantageously, such data allowsfor continuous enhancement and development of improved process steps andthe voice command interface program product 45.

It is important to note that while embodiments of the present inventionhave been described in the context of a fully functional system, thoseskilled in the art will appreciate that the mechanism of the presentinvention and/or aspects thereof are capable of being distributed in theform of a computer readable medium of instructions in a variety of formsfor execution on a processor, processors, or the like, and that thepresent invention applies equally regardless of the particular type ofsignal bearing media used to actually carry out the distribution.Examples of computer readable media include: nonvolatile, hard-codedtype media such as read only memories (ROMs) or erasable, electricallyprogrammable read only memories (EEPROMs), recordable type media such asfloppy disks, hard disk drives and CD-ROMs, and transmission type mediasuch as digital and analog communication links, including thosedescribed previously.

As shown in FIGS. 1-12, embodiments of the present invention alsoinclude a computer readable medium that is readable by a computer toenhance command communication in a high-noise environment between a userand a vehicle mobile data computer application program. For example, inan embodiment of the present invention, the computer readable mediumincludes a set of instructions that, when executed by the computer, suchas, for example, vehicle mobile data computer 41 (see FIG. 1), cause thecomputer to perform the operation of extracting data from an initializer75 (see FIG. 5A) configured to assign each of a plurality ofuser-specific or user-specified voice command terms or phrases, defininga plurality of vehicle mobile data computer application program voicecommands, to a corresponding vehicle mobile data computer input devicecommand input, e.g., keyboard keystroke or series of keystrokes, for thevehicle mobile data computer application program 43. The initializer 75can be implemented by an initialization file such as, for example, an“.ini” file, through data entered into the Windows® registry, or byvarious other means known to the skilled in the art. The instructionsalso include those to perform the operation of assigning the voicecommands to corresponding vehicle mobile data keyboard key commandinputs to thereby interface with the vehicle mobile data computerapplication program 43.

In response to the initialization, the instructions can further includethose to perform, when in a high noise environment, the operations ofreceiving, through an audio input device, e.g., microphone 63, 97, audioinput including both voice commands from the user and noise from thevehicle V. Also included are instructions to perform the operation ofperforming an acoustic description comparison on the received audioinput to thereby identify: voice commands assigned in or by theinitializer 75; members of a phonetic alphabet associated to or with theinitializer 75 to provide command input corresponding to a plurality ofletters each corresponding to separate keyboard key input for keyboard59; and a plurality of numbers each corresponding to a separatenumerical keyboard key input for keyboard 59. Particularly with respectto law-enforcement, voice command recognition speed and accuracy isessential in order to prevent unwarranted distraction of an officer.Accordingly, by providing a very limited set of voice commands which areeasy to assign and remember, the officer, even in a very high-stresssituation, can easily convey, and the voice command interface programproduct can quickly recognize, all voice commands necessary to operatethe mobile data communications application program or other applicationprograms. Further, selection of the very limited set of voice commands:reduces the amount of system resources and time required to analyze theaudio input; and increases the probability of accurately recognizingeach particular voice command.

The result of the acoustic description comparison is to identify one ormore voice commands presented by the user to thereby execute anassociated vehicle mobile data computer application program commandinput. For example, as perhaps best shown in FIG. 6, rather than type alicense plate number, the user annunciates corresponding letters of theassigned phonetic alphabet and the Arabic numerals corresponding tothose letter and number keys on keyboard 59. This license plate numberis then sent, and data is returned by the mobile data communicationsapplication program 45.

In an embodiment of the present invention, a computer readable mediumthat is readable by a computer, e.g., vehicle mobile data computer 41,includes a set of instructions that, when executed by the vehicle mobiledata computer 41, cause the computer to perform the operations of:receiving as audio input from the user through the microphone 63, 97, avoice command representing a vehicle mobile data computer applicationprogram command input; and identifying the voice command by analyzingthe received audio input. The instructions also include those to performthe operations of: echoing the identified voice command through an audiospeaker 65, in response to identification of the received voice commandand/or release of a push-to-talk control key; and transmitting thecorresponding command input to the vehicle mobile data computerapplication program 43. The echo preferably includes preselected audiodata associated with the identified voice command including arepresentation of the identified voice command, preferably in the formof a prerecorded human voice audio message 77, verbalizing arepresentation the identified voice command.

The audio input is preferably enabled and the echo is preferablyinitiated either through manipulation of a control key, such as, forexample, left control key 91. Other alternatives within the scope of thepresent invention include enabling audio input for a plurality of thevoice commands through use of a unique enabling voice command, such as,for example, “computer,” “vehicle computer,” or “Christine.” In thisembodiment of the present invention, audio input is disabled eitherthrough use of the left control key 91, a preselected or predeterminetime delay without receiving a voice command, and/or a disabling voicecommand such as, for example, “computer off.” Various combinations ofthis embodiment include, for example, enabling the receiving of audioinput and/or transmission of command input associated with identifiedvoice commands in response to activation of a control selector, e.g.,left control key 91, followed by disabling such functionality inresponse to a preselected or predetermined time delay. In such case, thefunctionality can then be reactivated through use of the left controlkey 91 or through use of an enabling voice command, e.g., “Christine.”Similarly, the echo can be initiated for an identified voice commandeither through release of the left control key 91, or a preselected orpredetermined time delay after identifying the voice command.

In an embodiment of the present invention, a computer readable mediumthat is readable by a vehicle mobile data computer 41 includes a set ofinstructions that, when executed by the vehicle mobile data computer 41,cause the vehicle mobile data computer 41 to perform the operations of:receiving an audio input from the user through a microphone 63, 97, thatmay or may not include a voice command representing a vehicle mobiledata computer application program command input; and analyzing thereceived audio input to determine if the audio input includes a voicecommand from a user. The instructions also include those to perform theoperation of rejecting the received audio input as including a voicecommand from the user after attempting to identify a valid assignedvoice command for a preselected or predetermined time period/delayperiod. The instructions also include those to perform the operation ofsubstantially immediately resuming awaiting receipt of a voice commandin response to termination of the delay period.

This functionality advantageously prevents the vehicle mobile datacomputer 41 from excessively “tying-up” system resources in order toattempt to identify either a false voice command embedded among a noisesignal or to identify a valid voice command provided by the user bututtered in such a high noise environment that the voice commandsignal-to-noise ratio is extremely low, making identification of thevoice command extremely difficult and unlikely.

If the audio input was strictly a result of noise, the voice commandinterface program product 45 is quickly reset to receive a valid voicecommand. If the audio input included a voice command having a lowsignal-to-noise ratio, this functionality allows the user to provide animmediate repeat of the valid voice command rather wait through alengthy delay typically resulting in both an unsuccessful attempt atidentifying the voice command and an unnecessary distraction to theuser. By quickly resetting to receive either an initial voice command ora repeat of a previously attempted voice command, the user is providedwith not only less distraction but increased voice commandidentification reliability.

This application is a divisional application which claims priority toand the benefit of continuation-in-part U.S. patent application Ser. No.10/656,487, filed on Sep. 5, 2003, which is a continuation of U.S.patent application Ser. No. 09/968,633, filed on Oct. 1, 2001, now U.S.Pat. No. 6,621,422, all of which are incorporated herein by reference intheir entirety.

In the drawings and specification, there have been disclosed a typicalpreferred embodiment of the invention, and although specific terms areemployed, the terms are used in a descriptive sense only and not forpurposes of limitation. The invention has been described in considerabledetail with specific reference to these illustrated embodiments. It willbe apparent, however, that various modifications and changes can be madewithin the spirit and scope of the invention as described in theforegoing specification and as defined in the appended claims. Forexample, embodiments of the present invention are described as usingphonetic alphabets and Arabic numerals commonly used in United States ofAmerica, however, use of other languages and numbering systems arewithin the scope of the present invention. Also for example, many of theexample embodiments were illustrated with respect to communication withlaw-enforcement. Other uses include providing command, control, andcommunications between other organizations and include providing commandand control input to the vehicle, itself. Further, various embodimentsof the present invention can be tailored to function on different orunique computer operating systems.

1. An apparatus to enhance command communication in a high-noiseenvironment between a user and user vehicle mobile data computer system,the apparatus comprising: a vehicle computer adapted to be positionedwithin a user vehicle and having memory to store data therein to definea mobile data computer adapted to communicate with a remote hostcomputer and in communication with at least one audio speaker and atleast one audio input device; a mobile data communications applicationprogram stored in the memory of the mobile data computer adapted tocommunicate with the remote host computer through the mobile datacomputer and to transmit and receive data through the remote hostcomputer; and a voice command interface program product stored in thememory of the mobile data computer and in communication with the mobiledata communications application program to enhance user communicationwith the remote host computer through the mobile data computer, thevoice command interface program product including instructions toperform the operations of receiving as audio input through the at leastone audio input device a voice command from the user representing acommand input, identifying the voice command by analyzing the receivedaudio input, echoing the identified voice command through the at leastone audio speaker, and transmitting the command input to the mobile datacommunications application program, the echo including a preselectedaudio message verbally representing the identified voice command.
 2. Anapparatus as defined in claim 1, wherein the voice command interfaceprogram product further includes instructions to perform the operationof transmitting audio data associated with the identified voice commandthrough the at least one audio speaker, the audio data comprising arepresentation of the identified voice command in prerecorded humanvoice.
 3. An apparatus as defined in claim 1, wherein the received audioinput includes a plurality of voice commands representing acorresponding plurality of command inputs; and wherein the voice commandinterface program product further includes instructions, responsive to apreselected time delay, to perform the operation of at least one of thefollowing: disabling receiving audio input from the audio input device,and disabling transmitting the plurality of command inputs to the mobiledata communications application program.
 4. An apparatus as defined inclaim 1, wherein the voice command interface program product includesinstructions, responsive to a preselected time-delay, to perform theoperations of rejecting received audio input as being a command from theuser, and resetting to receive a command from the user.
 5. An apparatusas defined in claim 1, wherein the received audio input includes aplurality of voice commands; wherein the mobile data computer includes amobile data input device having a plurality of control functionselectors; and wherein the apparatus further comprises an initializeraccessible by the voice command interface program product and configuredto assign a plurality of command terms or phrases defining the pluralityof voice commands to a corresponding plurality of mobile data computerinput device command inputs for the mobile data communication program,and to assign to each of a subset of the plurality of voice commandsprerecorded audio output data to echo the respective voice commands. 6.An apparatus as defined in claim 1, wherein the received audio inputincludes a plurality of voice commands representing a correspondingplurality of command inputs, continuous and repetitive noise, and noisecaused by reverberation of the plurality of voice commands from adjacentvehicle structures; wherein the at least one audio input devicecomprises an array microphone adapted to be connected to a vehiclestructure separate and spaced apart from the user when receiving audioinput from the user and having at least two separate and spaced apartunidirectional microphone transducers with individual audio channelsadapted to provide a directional area of audio input sensitivity havingan angle and area of reception, to thereby enhance detection of theplurality of voice commands and to thereby provide the plurality ofvoice commands from the user to the mobile data communicationsapplication program through the voice command interface program product;and audio input processing program product adapted to interface with thearray microphone and adapted to provide instructions to perform theoperations of attenuating continuous and repetitive noise to therebyremove voice command recognition latency, and adjusting the area ofreception of the audio input to the microphone array to substantiallyreduce reverberation noise to thereby enhance reception of the pluralityof voice commands.
 7. An apparatus as defined in claim 6, wherein thearray microphone includes four separate and spaced apart unidirectionalmicrophone transducers adapted to be positioned to focus on a voice ofthe user, wherein the array microphone includes a digital signalprocessor having memory, wherein the audio input processing programproduct is positioned in the memory of the digital signal processor,wherein the array microphone provides a differential of at least 25 dBat a frequency of 1 kHz between a voice frequency response measuredwithin the area of reception and a background noise response measuredoutside the area of reception, and wherein the audio input processingprogram product is adapted, responsive to detection of audio input fromthe user, to adjust the angle of reception to focus the area ofreception on the voice of the user.
 8. An apparatus as defined in claim1, wherein the received audio input includes a plurality of voicecommands representing a corresponding plurality of command inputs; andwherein the at least one audio input device comprises a wirelessmicrophone assembly including a microphone and audio speaker adapted toprovide wireless audio communication between the mobile data computerand the user when outside the law enforcement vehicle to transmit theplurality of voice commands from the user to the mobile datacommunications application program through the voice command interfaceprogram product, to thereby provide command input to the mobile datacommunications application program, and to receive an audio echo foreach of a subset of the plurality of voice commands, to thereby providethe user verification of correct identification of each respective voicecommand echoed by the voice command interface program product.
 9. Acomputer readable medium that is readable by a vehicle mobile datacomputer to enhance command communication in a high-noise environmentbetween a user and a vehicle mobile data computer application program,the computer readable medium comprising a set of instructions that, whenexecuted by the vehicle mobile data computer, cause the vehicle mobiledata computer to perform the following operations: extracting data froman initializer configured to assign a plurality of user-specific voicecommand terms or phrases defining a plurality of vehicle mobile datacomputer application program voice commands each to a correspondingvehicle mobile data computer input device command input for the vehiclemobile data computer application program; assigning the plurality ofvehicle mobile data computer application program voice commands,responsive to the extracted data, to corresponding vehicle mobile datakeyboard key command inputs to interface with the vehicle mobile datacomputer application program, the voice commands specifically labeledfor quick recognition and ease of recall by the user; receiving audioinput through an audio input device when in a high noise environment;and performing an acoustic description comparison on the received audioinput to thereby identify a preselected set of voice commands consistingessentially of: voice command terms assigned in the initializer, membersof a phonetic alphabet associated to the initializer to provide commandinput of a plurality of letters each corresponding to separate keyboardkey input, and a plurality of numbers each corresponding to a separatenumerical keyboard key input, to identify each respective voice commandto thereby execute an associated vehicle mobile data computerapplication program command input, the preselected set of voice commandsbeing specifically limited in number to reduce computer processorutilization requirements when performing the acoustic descriptioncomparison and to enhance voice command recognition probability.
 10. Acomputer readable medium that is readable by a vehicle mobile datacomputer to enhance command communication in a high-noise environmentbetween a user and a vehicle mobile data computer application program,the computer readable medium comprising a set of instructions that, whenexecuted by the vehicle mobile data computer, cause the vehicle mobiledata computer to perform the following operations: receiving from theuser through an audio input device as audio input a voice commandrepresenting a vehicle mobile data computer application program commandinput; identifying the voice command by analyzing the received audioinput; echoing the identified voice command through an audio speaker,responsive to identification of the voice command, the echo includingpreselected audio data associated with the identified voice command andcomprising a representation of the identified voice command inprerecorded human voice verbalizing the representation of the identifiedvoice command; and transmitting the corresponding command input to thevehicle mobile data computer application program.
 11. A computerreadable medium as defined in claim 10, further comprising a set ofinstructions that, when executed by the vehicle mobile data computer,cause the vehicle mobile data computer to perform the followingoperations: extracting data from an initializer configured to assign aplurality of user-specific voice command terms or phrases defining aplurality of vehicle mobile data computer application program voicecommands to a corresponding vehicle mobile data computer input devicecommand input for the vehicle mobile data computer application program;and assigning the plurality of vehicle mobile data computer applicationvoice commands, responsive to the extracted data, to correspondingvehicle mobile data keyboard key command inputs to thereby interfacewith the vehicle mobile data computer application program.
 12. Acomputer readable medium that is readable by a vehicle mobile datacomputer to enhance command communication in a high-noise environmentbetween a user and a vehicle mobile data computer application program,the computer readable medium comprising a set of instructions that, whenexecuted by the vehicle mobile data computer, cause the vehicle mobiledata computer to perform the following operations: receiving through anaudio input device audio input including a plurality of voice commandsfrom the user; transmitting to the vehicle mobile data computerapplication program the plurality of voice commands from the userreceived as audio input; and disabling, responsive to a preselected timedelay, transmitting the plurality of voice commands to the vehiclemobile data communications application program.
 13. A computer readablemedium that is readable by a vehicle mobile data computer to enhancecommand communication in a high-noise environment between a user and avehicle mobile data computer application program, the computer readablemedium comprising a set of instructions that, when executed by thevehicle mobile data computer, cause the vehicle mobile data computer toperform the following operations: receiving an audio input through anaudio input device; analyzing the received audio input to determine ifthe audio input includes a voice command from the user; rejecting,responsive to a preselected time-out, the received audio input asincluding a voice command from the user; and awaiting receipt of a voicecommand from the user, responsive to the time-out.
 14. A method ofenhancing command communication in a high-noise environment between auser and a user vehicle mobile data computer, the method comprising thesteps of: providing a voice command interface program product adapted tointerface with a vehicle mobile data computer having a vehicle mobiledata computer application program requiring command input, the voicecommand interface program product providing vehicle mobile data computerinput device emulation; and providing an initializer accessible by thevoice command interface program product and configured to assign aplurality of user-tailored voice command terms or phrases defining aplurality of vehicle mobile data computer application program voicecommands to a corresponding plurality of vehicle mobile data computerinput device command inputs for the vehicle mobile data computerapplication program.
 15. A method as defined in claim 14, the methodfurther comprising the steps of: providing a plurality of phoneticalphabet data sets, at least one selected to interface with theinitializer and adapted to be accessible by the voice command interfaceprogram product, to thereby provide command input of a plurality ofletters corresponding to a plurality of vehicle mobile data computerinput device inputs for the vehicle mobile data computer applicationprogram.
 16. A method of enhancing command communication in a high noiseenvironment between a user and a user vehicle mobile data computer, themethod comprising the steps of: receiving by the user vehicle mobiledata computer from a user accessible web site through an area network asingle self-extracting executable program including a voice commandinterface program product adapted to interface with a user vehiclemobile data computer positioned in a user vehicle having at least onevehicle mobile data computer application program requiring commandinput, the voice command interface program product adapted, responsiveto audio input including a plurality of voice commands provided throughan audio input device in communication with the user vehicle mobile datacomputer, to provide vehicle mobile data computer input device emulationfor the at least one vehicle mobile data computer application program;executing the self-extracting executable program, to thereby installeach of a plurality of voice command interface program productcomponents of the voice command interface program product in memory ofthe vehicle mobile data computer; and assigning a plurality ofuser-tailored vehicle mobile data computer application voice commandseach to a corresponding keyboard key command input to interface audioinput from the audio input device with the at least one vehicle mobiledata computer application program, to thereby provide command input,responsive to the plurality of voice commands, to the at least onevehicle mobile data computer application program.
 17. A method asdefined in claim 16, wherein the assigning step is provided through useof an initializer configured to assign a plurality of user-tailoredvoice command terms to the corresponding keyboard key command inputs,the voice command terms custom labeled for quick recognition and ease ofrecall by the user; and wherein the method further comprises the step ofperforming an acoustic description comparison when in a high noiseenvironment on received audio input to thereby identify a preselectedset of only the following voice commands: voice command terms assignedin the initializer, members of a phonetic alphabet associated to theinitializer to provide command input of a plurality of letters eachcorresponding to a separate keyboard key input, and a plurality ofnumbers each corresponding to a separate numerical keyboard key input,to identify each voice command to thereby execute an associated vehiclemobile data computer application program command input, the preselectedset of voice commands being specifically limited in number to reducecomputer processor utilization requirements when performing the acousticdescription comparison and to enhance voice command recognitionprobability.
 18. A method of enhancing command communication in ahigh-noise environment between a user and a user vehicle mobile datacomputer system, the method comprising the steps of: receiving as audioinput a voice command from the user through an audio input device, thevoice command representing a corresponding command input for a vehiclemobile data computer application program; identifying the voice commandby analyzing the received audio input; echoing the identified voicecommand through an audio speaker, the echo including a preselected audiomessage prerecorded in human voice verbally repeating the voice command;and transmitting the corresponding command input to the vehicle mobiledata computer application program.
 19. A method as defined in claim 18,wherein the received audio input includes a plurality of voice commandsrepresenting a corresponding plurality of command inputs; wherein theaudio input device is adapted to be carried by the user when positionedoutside the user vehicle, to thereby transmit the plurality of voicecommands from the user to a receiver connected to the user vehicle whenpositioned outside the user vehicle; and wherein the method furthercomprises the steps of: transmitting through the audio input device theplurality of voice commands from the user when outside the user vehicleto the at least one vehicle mobile data computer application programthrough the voice command interface program product, to thereby providecommand input to the vehicle mobile data computer application program,and receiving through an audio output device also carried by the userwhen outside the user vehicle an audio echo of the plurality of voicecommands, to thereby provide the user verification of correct receipt ofeach command input.
 20. A method as defined in claim 18, the methodfurther comprising the steps of: forming a log file to log each attemptat recognizing an audio input; logging in the log file, responsive toreceiving the respective audio input, each attempt at recognizing eachrespective audio input; requesting the log file from the user; andperforming a statistical analysis on the log file to analyze recognitionfailure rates, to thereby enhance development of improved process steps.21. A method of enhancing command communication in a high noiseenvironment between a user and a user vehicle mobile data computersystem, the method comprising the steps of: receiving through an audioinput device audio input including a plurality of voice commands fromthe user; transmitting to a user vehicle mobile data computerapplication program the plurality of voice commands from the userreceived as audio input; and disabling, responsive to a preselected timedelay, transmitting the plurality of voice commands to the vehiclemobile data computer application program.
 22. A method of enhancingcommand communication in a high noise environment between a user and auser vehicle mobile data computer system, the method comprising thesteps of: receiving an audio input through an audio input device;analyzing the received audio input to determine if the audio input is avoice command representing a command input from the user to a vehiclemobile data computer application program; rejecting, responsive to apreselected time-out, the received audio input as being a command inputfrom the user; and awaiting receipt of a command input from the usersubstantially without delay, responsive to the time-out.
 23. A method asdefined in claim 22, wherein the preselected time-out is selected to beless than three seconds in duration.